package com.jjyu.utils;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

/**
 * 对字符串进行md5加密解密的工具类
 */
public class Md5Utils {


    /**
     * 生成给定字符串的 MD5 散列值。
     *
     * @param input 输入的字符串。
     * @return 32位的十六进制字符串形式的MD5散列值。
     */
    public static String stringToMD5(String input) {
        try {
            MessageDigest md = MessageDigest.getInstance("MD5");
            md.update(input.getBytes());
            byte[] digest = md.digest();
            StringBuilder sb = new StringBuilder();
            for (byte b : digest) {
                sb.append(String.format("%02x", b & 0xff));
            }
            return sb.toString();
        } catch (NoSuchAlgorithmException e) {
            throw new RuntimeException("MD5 algorithm not found", e);
        }
    }
}

